﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;

namespace Autorizacion_facturas_caja.Vacaciones
{
    public partial class frmVacaciones_Correo : Form
    {

        objRH obj = new objRH();
        objVacaciones obj1 = new objVacaciones();
        Manejador_Vacaciones MV = new Manejador_Vacaciones();
        SendMail SM = new SendMail();

        #region FUNCIONES
        public frmVacaciones_Correo(objRH obj2, objVacaciones obj3)
        {
            InitializeComponent();
            toolTip1.SetToolTip(btnEnviar, "ENVIAR");
            toolTip1.SetToolTip(btnSalir, "REGRESAR");
            obj1 = obj3;
            obj = obj2;
            llenar();
        }
        //llena los campos
        private void llenar()
        {
            DataTable datos = MV.llenar_correo(obj.Id_Empleado, obj1.Id_Correo_Vacaciones);
            DataRow[] array = new DataRow[datos.Rows.Count];
            datos.Rows.CopyTo(array, 0);
            object[] Info = datos.Rows[0].ItemArray;
            obj.Id_Empleado = int.Parse(Info[0].ToString().Trim());
            obj.Correo = (Info[1].ToString().Trim());
            obj.Correo_Jefe = (Info[2].ToString().Trim());
            obj1.Asunto = (Info[3].ToString().Trim());
            obj1.Body = (Info[4].ToString().Trim());
            if ((Info[5].ToString().Trim()) != "")
            {
                obj1.Id_Vacaciones = int.Parse(Info[5].ToString().Trim());
            }
            obj1.Id_Correo_Vacaciones = int.Parse(Info[6].ToString().Trim());
            txtPara.Text = obj.Correo;
            txtCC.Text = obj.Correo_Jefe;
            txtAsunto.Text = obj1.Asunto;
            txbMensaje.Text = obj1.Body;
        }


        #endregion

        #region BOTONES
        //envia el correo electronico
        private void btnEnviar_Click(object sender, EventArgs e)
        {
            try
            {
                string correo;
                if (txtCC.Text.Trim() != "") { correo = txtPara.Text + ";" + txtCC.Text; }
                else
                {
                    correo = txtPara.Text;
                }
                bool resp = SM.Sendmail(correo, txtAsunto.Text, txbMensaje.Text);

                if (resp)
                {
                    obj.Correo = txtPara.Text;
                    obj1.Cc = txtCC.Text;
                    obj1.Body = txbMensaje.Text;
                    bool resp1 = MV.Guardar_Correo(obj.Id_Empleado, obj1.Id_Correo_Vacaciones, obj1.Id_Vacaciones, obj1.Cc, obj.Correo, obj1.Body);
                    if (resp1)
                    {
                        MessageBox.Show("CORREO ENVIADO", "AVISO");
                        Close();
                    }
                    else { MessageBox.Show("NO SE PUDIERON GUARDAR LOS DATOS", "ALERTA"); }
                }
                else { MessageBox.Show("NO SE PUDO ENVIAR EL CORREO", "ALERTA"); }
            }
            catch { MessageBox.Show("RECUERDE QUE LOS CORREOS NO DEBEN TERMINAR EN ';' ", "ALERTA"); }
        }
        //sale de la forma
        private void btnSalir_Click(object sender, EventArgs e)
        {
            Close();
        }
        #endregion


        #region  EVENTOS
        #endregion
      
    }
}
